package com.xiongwei.io;

import java.io.PrintWriter;
import java.io.StringWriter;

/**
 * PrintStream是一种能接受各种数据类型的输出,打印数据比较方便:
 *      System.out是标准输出
 *      System.err是标准错误输出
 *
 * PrintWriter是基于Writer的输出.
 *
 * @author XiongWei
 * @date 2021/1/11
 */
public class PrintStreamAndPrintWriter {

    /*
    我们经常使用的System.out.println()实际上就是使用PrintStream打印各种数据。其中，System.out是系统默认提供的PrintStream
    PrintStream最终输出的总是byte数据，而PrintWriter则是扩展了Writer接口，它的print()/println()方法最终输出的是char数据
     */
    public static void main(String[] args) {
        StringWriter sw = new StringWriter();
        try (PrintWriter pw = new PrintWriter(sw)) {
            pw.println("Hello");
            pw.println(12345);
            pw.println(true);
        }
        System.out.println(sw.toString());
    }
}
